package model

import (
	"time"
)

type EquipmentTransfer struct {
	EquipmentID         uint      `gorm:"primaryKey;autoIncrement;column:equipment_id"`  // 主键自增[1,4](@ref)
	Title               string    `gorm:"type:varchar(100);not null"`                    // 转让标题
	City                string    `gorm:"type:varchar(50);not null"`                     // 所在城市
	EquipmentCondition  string    `gorm:"type:enum('全新','9成新','7成新','其他');default:'其他'"` // 设备新旧程度[4](@ref)
	Price               float64   `gorm:"type:decimal(12,2);not null"`                   // 转让价格（单位：万元）[7](@ref)
	Department          *string   `gorm:"type:varchar(50)"`                              // 适用科室（指针表示可为空）[5](@ref)
	Brief               string    `gorm:"type:varchar(20);not null"`                     // 摘要
	Details             string    `gorm:"type:text;not null"`                            // 详细说明
	ContactName         string    `gorm:"type:varchar(50);not null"`                     // 联系人
	ContactPhone        string    `gorm:"type:varchar(20);not null"`                     // 联系电话
	PublishTime         time.Time `gorm:"autoCreateTime"`                                // 自动填充发布时间[9](@ref)
	UserID              uint      `gorm:"index;not null"`                                // 外键索引[10](@ref)
	CertificationStatus string    `gorm:"type:enum('已认证','未认证');default:'未认证'"`          // 认证状态
	IsDeleted           bool      `gorm:"column:is_deleted;default:false;comment:是否已软删除"`
}

// 自定义表名（可选，默认生成蛇形复数形式）
func (EquipmentTransfer) TableName() string {
	return "equipment_transfer"
}
